Where the objective is to condition and decode a received signal which contains coded data, defined conditions must be known at the receiving end, on the basis of which coding was effected (included) at the transmitting end so that decoding is quickly and reliably possible. For example, the coding method must be known to the receiving end (e.g. edge-coded, binary, PWM, AM, FM). Because coded data are usually transmitted time-serially, certain coding methods, such as edge-coded, binary signals or in PWM (pulse width modulation), necessitate that the time base be known on the basis of which coding is carried out to permit correct decoding at the receiving end.
Publication DE 196 50 935 A1, for example, discloses the configuration of a signal that carries data originating at the transmitting end. This configuration is employed in vehicle manufacture, and it especially concerns the transfer of data from an active wheel sensor to a primary control unit. A system of this type is represented in FIG. 1. A sensor 107, on the one hand, and a brake 108, on the other hand, are fitted to a wheel 106. Sensor 107 is an ‘active’ sensor which means that it not only modifies incoming electric signals (voltage or current), but also actively shapes signals to convey information from the wheel 106 to a superior unit 101. Sensor 107 is connected to unit 101 by way of line 105, and line 105 may comprise a plurality of lines. Sensor 107 transmits various pieces of information related to wheel 106. At first information relating to the wheel rotational speed should be transmitted. In addition, other pieces of information can be transmitted such as temperature, wear of brake shoes, or similar factors. Because sensor 107 is placed in a comparatively ‘rough’ environment, i.e., directly on the wheel (exposed to vibrations, temperature differences, moisture), and because another requirement is to minimize the effort and structure in wiring for making the sensor less susceptible to malfunction, it is necessary to arrange the data transfer method so that it reliably functions despite the adverse conditions described hereinabove.
The system in FIG. 1 includes in the control or regulation unit 101 a device 104 according to the present invention for conditioning a signal that transfers coded data; subsequent thereto is a decoding unit 103 which is connected to the device 104 by way of a line 112 that may comprise a plurality of individual lines, and thereafter a control system 102 which, in accordance with the signals received (also additional, not shown input signals) produces actuating data for the wheel concerned, on the one hand, and other data, such as alarms for alarm units 111, etc., on the other hand. The control system 102 can output e.g. electric actuating signals to a valve block 10 which, in turn, influences the wheel brake 108 by way of a hydraulic line 109.
The signal produced in the active sensor 107 and transferred to the device 104 of the present invention by way of line 105 can be configured as described in DE 196 50 935. The signal may look like shown in FIG. 2. The signal produced by sensor 107 includes different pulses, i.e., a wheel pulse 201 followed by data pulses 203 with pulse pauses 202, 204 of different significance in between them. The first pulse pause 202 can be adjusted at the transmitting end and serves for a time delay before the transfer of coded data after the wheel pulse 201. The pulse pauses 204 are data pulse pauses which, exactly as the data pulses 203, indicate amplitude-coded binary data which were coded with a time clock tp that corresponds to the ideal width of the wheel pulse 201. The data pulses 203 and data pulse pauses 204 also have the ideal width tp. The pulse pause 202 has a width of tp/2 to permit sampling of the data pulses 203 and data pulse pauses 204 in the interval of tp after the end of a wheel pulse 201. The time ratios between wheel pulse, data pulse, and pulse pause must be known at the receiving end so that the data can be conditioned and decoded correctly. The time base tp is either known at the receiving end or can preferably be obtained in the conditioning operation by time measurement, e.g. measuring the pulse width.
Preferably, the wheel pulse 201 has a higher amplitude than the data pulses 203. In FIG. 2, the wheel pulse 201 has an amplitude which is higher than a second threshold value SW2 and lower than a third threshold value SW3; the data pulses 203 have an amplitude which is higher than a first threshold value SW1 but lower than SW2, and the pulse pauses 202, 204 have an amplitude which is higher than a bottom threshold value SW0 but lower than SW1. The bottom threshold value SW0 lies above a zero line 205. A limited number of data pulses follows a wheel pulse. The coded data exemplarily show a bit sequence of 011001, that means, a data pulse 203 shows a logical ‘1’ and a data pulse pause 204 shows a logical ‘0’. The sequence made up of a wheel pulse 201 and data pulses 203 or data pulse pauses 204 is output periodically, and the duration of the period at the transmitting end is determined in accordance with the wheel rotational speed so that following the data pulses 203 is again a wheel pulse 201 with new data pulses 203 and/or data pulse pauses 202, 204. The wheel rotational speed can then be determined from the distance between consecutive wheel pulses 201. In between consecutive wheel pulses 201, and in dependence on the interval between the wheel pulses 201, an appropriate number of data pulses 203 or data pulse pauses 204 is transmitted which permit transfer of further information such as brake lining wear, brake temperature, brake fluid temperature, or brake fluid condition, etc., from the wheel via the line 105 to the device 104 of the present invention. The shorter the interval between the consecutive wheel pulses 201 is, the fewer data pulses 203 or data pulse pauses 204 can be transmitted.
In the applicant's former application DE 198 08 575.3 entitled ‘Method and device for conditioning a received signal that transmits coded data’, a method and a device for conditioning data coded in the way described hereinabove is disclosed. In this application, the width tm of a received wheel pulse, which corresponds to tp in the optimal case, is determined as a time base, and the data pulses are subsequently sampled in regular intervals tm. However, as the edges of the transmitted pulses are not infinitely steep, which would be ideal, but have a finite rise (and the said rise can be different from pulse to pulse, especially from wheel pulse to wheel pulse due to environmental influences), an error in the determination of the time base may occur so that this base no longer corresponds to the width of the data pulses. This is a shortcoming in the above-mentioned former application because this error may cumulate in data conditioning so that the maximum number of data which can be conditioned reliably between two wheel pulses is limited.
The above problem was described with respect to an application in vehicle manufacture. It may occur, however, also in other applications.
An object of the present invention is to provide a method and a device for conditioning a signal that transmits coded data which permit a reliable decoding of the transmitted data and do not limit the number of data to be transmitted.
Before embodiments of the present invention will be described in detail, a coding method according to the present invention is explained with reference to FIG. 3.
An ideal signal originating from sensor 107 can have a corresponding shape. The binary data are not amplitude-coded, but edge-coded therein. The signal includes a wheel pulse 301 and data pulses 305 with data edges 303, the width of the wheel pulse 301 in turn being tp and the data being coded with the time clock tp, i.e., the data edges 303 have ideally a distance of tp one to the other. Preferably the same facts as in FIG. 2 apply to the amplitudes of the pulses. Exactly as in FIG. 2, the coded data show the exemplary sequence of bits of 011001, and herein a leading data edge shows a logical ‘1’, and a trailing data edge shows a logical ‘0’. Of course, the edges can also show the reverse bit values or still other values. It can be seen in FIG. 3 that an intermediate edge 304 is necessary when e.g. consecutive bits with the same logical value shall be transmitted because e.g. two consecutive coded trailing edges can only be transmitted when a leading edge lies in between. The intermediate edges 304 do not carry data information and, therefore, must not be conditioned at the receiving end.
The sequence of a wheel pulse 301 and data pulses 305 is periodical as the signal sequence in FIG. 2. The wheel rotational speed may then be determined from the distance between consecutive wheel pulses 301. An appropriate number of data pulses 305 with the above-mentioned information is transmitted between consecutive wheel pulses 301 in dependence on the interval between the wheel pulses 301.
In this case, too, it is necessary that time ratios between wheel pulse, data pulse and pulse pause be known at the receiving end. When the transmitter is employed in a rough environment (as described above) so that the signal edges, especially the wheel pulse edges, are differently steep due to varying environmental influences, the time clock on the basis of which coding is carried out can be determined only with insufficient accuracy at the receiving end. This is a problem. Further, the time clock itself may be exposed to variations due to the rough environment. A fixed time base cannot be assumed then. The time clock will rather vary so that it must be advised to the receiver from case to case.
According to the present invention, along with the transmitted signal an information about the time clock, also referred to as coding clock pulse, is transmitted on the basis of which coding was effected. ‘Coding clock pulse’ refers to the clock at which the data bits appear in succession. This need not be the working clock of a coding circuit, nor the working clock of a circuit for the conditioning of data, but can be chosen in accordance with such a circuit clock. This information relating to the coding clock pulse is determined as a time constant at the receiving end. Further conditioning of the received signal is performed in accordance with the said time constant.
In accordance with the time constant, a time or a time window is set for which or in which a first signal part which has a first edge is conditioned. Further, a second time or a second time window is set in accordance with the time constant and in dependence on the time of the first edge, for which or in which a second signal part is conditioned. A time window is a time range where the detection of edges or, in general, signal conditioning is permitted. Another time window is respectively set based on a signal edge detected in a previous time window, and the time of the commencement and the width of the time window depends on the time constant. When another edge is detected in this time window, this edge can be taken as a new basis for another time window. One advantage involves that an edge which appears sooner or later than expected can be detected because edge detection is possible within a time range which bounds the time an edge is expected. Another advantage is that the error in determining the time constant is not cumulative due to the fact that a new edge detection range is determined based on the actual time of an edge. This advantage also gives rise to the additional benefit of allowing an unlimited number of data which can be conditioned with certainty between two wheel pulses is not limited.
Preferably, the transmission of the information relating to the coding clock pulse is carried out at the beginning of data transfer. The time constant also can then be established at the commencement of the conditioning operation so that the respectively latest information can be used for conditioning of the following data. In ‘frequently’ recurrent sequences of signals, however, a time constant obtained in an earlier cycle may also be used for a following cycle. The time constant obtained can correspond to a bit duration or, e.g., in edge-coded data to the time interval between two data edges in the received signal, or at least permit inferring therefrom that binary coding was effected, for example, by way of a proportional correlation. The time constant obtained can designate an average pulse duration or similar items in pulse width modulation.
FIG. 4 illustrates one embodiment of the method according to the present invention for conditioning a received signal that transmits coded data. The signal includes pulses with real, finite steep edges. The width or duration of the wheel pulse 401 is designated as time constant tm. In this arrangement, the width is determined as time period between the time the second threshold value SW2 is exceeded and the time when the value drops below the first threshold value SW1. However, the time constant tm may also be fixed differently, for example, as a time period between exceeding and dropping below the first threshold value SW1 or the second threshold value SW2, or in another fashion.
The grey ranges are time windows 403 which encompass the data edges 402 being conditioned. The bright ranges in between contain intermediate edges 404 which must not be taken into account in data conditioning because they do not carry data information. Only an edge which lies within a time window 403 may and can be detected as a data edge 402. The time window 403 must be chosen accordingly to this end.
In accordance with the time constant tm, two durations t1 and t3 are determined, the first duration t1 determining the opening of a time window 403 and the third duration t3 determining the closing of a time window 403. An opened time window 403 will be closed after the third duration t3, starting from an edge 402 detected in this time window 403. A next time window 403 will be opened after a first duration t1 starting from the edge 402 detected in the previous time window 403. In this arrangement, ‘opening’ of a time window 403 means the beginning and ‘closing’ of a time window 403 means the end of a time where edge detection is allowed.
Thus, the time of detection of a data edge 402 in a time window 403 determines the time for closing of the instantaneous time window 403 and opening of the next time window 403 in which another data edge 402 is expected. It is favorable, but not imperative, that closing of the one time window and opening of the following time window 403 is based upon the same edge or on the last edge detected. It is assumed that the data edges ideally have the same distance from one another because coding was effected with a fixed coding clock pulse. Accordingly, the durations t1 and t3 and, thus, the time windows 403 were set. The first duration t1 must be so determined that the time window 403 will only be opened after a possible intermediate edge 404 has appeared. Further, a time window 403 must be closed before an intermediate edge 404 appears. If a data edge 402 in a time window 403 arrives too early or too late, this will not have negative effects on the detection of the following data edges 402 because the time windows 403 are set adaptively in dependence on respectively one previous data edge 402, preferably the last one detected, and are thus not determined invariably according to a fixed time pattern. Therefore, a wrong determination of the time constant tm will not either have great effects because this error has equal effects for each time window and will not cumulate. The fact that conditioning does not take place at defined times but at any time within a longer period of time (time window), there is the possibility of detecting also data edges which appear too early or too late, and the time window may only be chosen to be so wide that the intermediate edges 404 are not detected.
When data are not edge-coded but e.g. amplitude-coded and shall be conditioned at defined times, a point of time in accordance with the time constant tm can be determined for data conditioning instead of the time window, and the said time is set in dependence on the time of a signal edge.